
<script language="javascript">

    var LODOP;
    //处理模版配置的信息，尺寸，字体大小等
    function configFormat2(obj){
        var _config = obj.Print;
        //左边栏宽度
        var widthLen = _config.width || 13;
        //纸张宽度
        var pageWidth = _config.pageWidth;
        //纸张高度
        var pageHeight = _config.pageHeight;
        //计算左边标题文字需要的宽度
        var widthLeft = parseFloat(widthLen - 0.5);

        //样品值显示在右侧的起始位置
        var marginLleft = parseFloat(widthLen);

        //开始打印的上边距
        var topMargin = 2;
        //开始打印的左边距
        var leftMargin = 2;

        //内容表格的实际使用宽度:纸张宽度去掉左右边距
        var tableWidth = pageWidth - leftMargin - leftMargin;
        //打印的实际高度:去掉上下边距
        var tableHeight = pageHeight - topMargin - topMargin;

        //右边文字的占用宽度
        var widthRight = parseFloat(tableWidth-widthLeft-1);

        var tempH = tableHeight / (2 + _config.fileds.length);
        var barCodeHeight = (tempH > 12) ? tempH : 12;

        // 字符串太短的情况
        var barCodeWidth = (tableWidth >= 68) ? 66 : (tableWidth - 2);

        var _tmpWidth = obj.code.length * 10;
        // console.log('obj.code:',obj.code);
        if(obj.code.length <= 5 && barCodeWidth > _tmpWidth) barCodeWidth = _tmpWidth;

        //计算显示主要内容的高度是多少,去掉公司名称的高度
        var rowHeight = (tableHeight - barCodeHeight) / (1 + _config.fileds.length);

        var fontSizeSys = _config.fontSize || 0;
        var fontSize = fontSizeSys || (rowHeight > 8 ? 11 : 9);

        var rowTop = rowHeight / 3.9;
        var inputHeight = rowHeight - rowTop;

        return {pageWidth,pageHeight,topMargin,rowTop,leftMargin,tableWidth,inputHeight,fontSize,rowHeight,widthLeft,marginLleft,widthRight,barCodeHeight,barCodeWidth,tableHeight};
    }

    //打印入口
    function barcode(key) {
        //获取到配置
        var obj = object[key];
        var config = configFormat2(obj);
        // console.log(config);
        CreateOneFormPageBarcode(obj ,config);

        if($('#input_'+key)){
            var count = $('#input_'+key).val() || 1;
            LODOP.SET_PRINT_COPIES(count);//指定份数
        }

        LODOP.PREVIEW();
        // LODOP.PRINT_DESIGN();
    };
    function CreateOneFormPageBarcode(obj ,config){

        LODOP=getLodop(document.getElementById('LODOP'),document.getElementById('LODOP_EM'));
        // LODOP.PRINT_INITA(topMargin+"mm",leftMargin+"mm",pageWidth+"mm",pageHeight+"mm","");
        LODOP.SET_PRINT_PAGESIZE(1,config.pageWidth+"mm",config.pageHeight+"mm",'二维码标签');
        //大矩形
        LODOP.ADD_PRINT_RECT(config.topMargin+"mm",config.leftMargin+"mm",config.tableWidth+"mm",config.tableHeight+"mm",0,1);

        //横线
        var lineHeight = config.topMargin + config.rowHeight;
        LODOP.ADD_PRINT_LINE(lineHeight+"mm",config.leftMargin+"mm",lineHeight+"mm",(config.tableWidth+config.leftMargin)+"mm",0,1);
        LODOP.ADD_PRINT_TEXT((config.topMargin+config.rowTop)+"mm",config.leftMargin+"mm",config.tableWidth+"mm",config.inputHeight+"mm",sys.compName);
        LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
        LODOP.SET_PRINT_STYLEA(0,"FontSize",config.fontSize);
        // 竖线
        LODOP.ADD_PRINT_LINE((config.topMargin+config.rowHeight)+"mm",(config.leftMargin+config.widthLeft-1)+"mm",(config.topMargin+config.rowHeight*(obj.Print.fileds.length+1))+"mm",(config.leftMargin+config.widthLeft-1)+"mm",0,1);

        for(var i=0;i<obj.Print.fileds.length;i++){
            var len = config.topMargin + config.rowTop + parseFloat(config.rowHeight*(i+1));
            lineHeight = lineHeight + config.rowHeight;
            LODOP.ADD_PRINT_LINE(lineHeight+"mm",config.leftMargin+"mm",lineHeight+"mm",(config.tableWidth+config.leftMargin)+"mm",0,1);

            var temp = obj.Print.fileds[i]?obj.Print.fileds[i]:'';
            LODOP.ADD_PRINT_TEXT(len+"mm",(config.leftMargin+1)+"mm",config.widthLeft+"mm",config.inputHeight+"mm",temp.title ? temp.title : '');
            LODOP.SET_PRINT_STYLEA(0,"Alignment",1);
            LODOP.SET_PRINT_STYLEA(0,"FontSize",config.fontSize);
            LODOP.ADD_PRINT_TEXT(len+"mm",(config.marginLleft+config.leftMargin)+"mm",config.widthRight+"mm",config.inputHeight+"mm",temp.value ? temp.value : '');
            LODOP.SET_PRINT_STYLEA(0,"Alignment",1);
            LODOP.SET_PRINT_STYLEA(0,"FontSize",config.fontSize);
            // LODOP.SET_PRINT_STYLE("FontSize",12);
        }

        var barCodeMargin = (config.tableWidth - config.barCodeWidth) / 2;
        //改条码类型支持大小写，Code39不支持小写
        LODOP.ADD_PRINT_BARCODE((lineHeight+0.6)+"mm",(config.leftMargin+barCodeMargin+1)+"mm",config.barCodeWidth+"mm",(config.barCodeHeight-0.8)+"mm","128Auto",obj.code);

        // LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
        LODOP.SET_PRINT_STYLEA(0,"FontSize",7);
    };


</script>

